package org.example.pojo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
@Data //为当前实体类的属性自动添加getter和setter方法
@NoArgsConstructor //生成一个无参的构造方法
@AllArgsConstructor //生成一个包含所有属性的有参构造方法
@ToString
@ExcelIgnoreUnannotated //没有注解的字段都不转换
public class Employee {

    /**
     * 忽略这个字段
     */
    @ExcelIgnore
    private Integer eId;
    @ExcelProperty(value = "名字",index = 0)
    private String eName;
    @ExcelProperty(value = "性别",index = 1)
    private String eSex;
    @ExcelProperty(value = "年龄",index = 2)
    private int eAge;
    @DateTimeFormat(pattern = "yyyy-MM-dd")  //处理前端传过来的参数格式转换
    @JsonFormat(pattern = "yyyy-MM-dd")  //要将一个日期类型以指定格式显示
    @ExcelProperty(value = "出生日期",index = 3)
    private Date eBirthday;
    @ExcelProperty(value = "电话",index = 4)
    private String ePhone;
    @ExcelProperty(value = "学历",index = 5)
    private String eEducation;
    @ExcelProperty(value = "婚姻状态",index = 6)
    private String eMarriage;
    @ExcelProperty(value = "现住址",index = 7)
    private String eLocation;
    @ExcelProperty(value = "血型",index = 8)
    private String eBlood;
    @ExcelProperty(value = "健康状态",index = 9)
    private String eHealth;
    @ExcelProperty(value = "民族",index = 10)
    private String eNation;
    @ExcelProperty(value = "籍贯",index = 12)
    private String eBirthplace;
    @DateTimeFormat(pattern = "yyyy-MM-dd")  //处理前端传过来的参数格式转换
    @JsonFormat(pattern = "yyyy-MM-dd")  //要将一个日期类型以指定格式显示
    @ExcelProperty(value = "入职日期",index = 13)
    private Date eJoinDate;
    @DateTimeFormat(pattern = "yyyy-MM-dd")  //处理前端传过来的参数格式转换
    @JsonFormat(pattern = "yyyy-MM-dd")  //要将一个日期类型以指定格式显示
    @ExcelProperty(value = "离职日期",index = 14)
    private Date eLeaveDate;
    @ExcelProperty(value = "部门编号",index = 15)
    private Integer dId;
    @ExcelProperty(value = "职称",index = 16)
    private String eJobTitle;
    @ExcelProperty(value = "职务",index = 17)
    private String ePosition;
    @ExcelProperty(value = "人员类别",index = 18)
    private String ePersonType;
    @ExcelProperty(value = "身份证号",index = 19)
    private String eIdCard;
    @ExcelProperty(value = "家庭住址",index = 20)
    private String eHomeLocation;
    @ExcelProperty(value = "身高",index = 21)
    private String eHeight;
    @ExcelProperty(value = "体重",index = 22)
    private String eWeight;
    @ExcelProperty(value = "政治面貌",index = 23)
    private String ePStatus;
    @ExcelProperty(value = "qq号",index = 24)
    private String qq;
    @ExcelProperty(value = "手机号",index = 25)
    private String eStaffPhone;
    @ExcelProperty(value = "邮箱",index = 26)
    private String eEmail;
    @ExcelProperty(value = "工作经历",index = 27)
    private String eWorkExperience;
    @ExcelProperty(value = "技能",index = 28)
    private String eSkill;
    @ExcelProperty(value = "获奖经历",index = 29)
    private String eAward;
    @ExcelProperty(value = "年度考核情况",index = 30)
    private String eYearStatus;
    @ExcelProperty(value = "备注",index = 31)
    private String eRemark;
    @ExcelProperty(value = "员工照片",index = 32)
    private String eImg;
    @ExcelProperty(value = "入职表",index = 33)
    private String eDesImg;
    @ExcelProperty(value = "身份证照片",index = 34)
    private String eCardImg;
    @ExcelProperty(value = "离职表",index = 35)
    private String eLeaveImg;
    @ExcelProperty(value = "状态",index = 36)
    private String eStatus;
    @ExcelProperty(value = "工龄",index = 37)
    private Double eSeniority;
    @ExcelProperty(value = "级别",index = 11)
    private String eLevel;
    private Department department;



}
